API: screen: Remove gdk_screen_get_active_window()
authorBenjamin Otte <otte@redhat.com>
Wed, 28 Sep 2016 00:16:53 +0000 (02:16 +0200)
committerBenjamin Otte <otte@redhat.com>
Sun, 16 Oct 2016 16:17:21 +0000 (18:17 +0200)
... and gdk_screen_get_window_stack().

Those functions were originally added in
5afb4f0f116f0e8a200dd55cc6688a957b4d397c but do not seem to be used as
they are not implemented anywhere but in X.

As GDK is not meant to fulfill window management functionality I'm going
to remove these functions without replacements.

docs/reference/gdk/gdk4-sections.txt
gdk/broadway/gdkscreen-broadway.c
gdk/gdkscreen.c
gdk/gdkscreen.h
gdk/gdkscreenprivate.h
gdk/mir/gdkmirscreen.c
gdk/quartz/gdkscreen-quartz.c
gdk/wayland/gdkscreen-wayland.c
gdk/win32/gdkscreen-win32.c
gdk/x11/gdkscreen-x11.c

index ea8808b8c62eb760ce820ec20683783fc7da300c..38ccefc50261d94d5ddd3c0200f273e897eb9fcb 100644 (file)
@@ -223,8 +223,6 @@ gdk_screen_get_font_options
 gdk_screen_set_font_options
 gdk_screen_get_resolution
 gdk_screen_set_resolution
-gdk_screen_get_active_window
-gdk_screen_get_window_stack
 
 <SUBSECTION Standard>
 GDK_SCREEN
index 273e26d0a1509c65620337d866e5bb3cf5aa8d1e..787c48d91aa0294d6df570b4d1bb9ea3e247a10e 100644 (file)
@@ -160,18 +160,6 @@ gdk_broadway_screen_make_display_name (GdkScreen *screen)
   return g_strdup ("browser");
 }
 
-static GdkWindow *
-gdk_broadway_screen_get_active_window (GdkScreen *screen)
-{
-  return NULL;
-}
-
-static GList *
-gdk_broadway_screen_get_window_stack (GdkScreen *screen)
-{
-  return NULL;
-}
-
 static void
 gdk_broadway_screen_broadcast_client_message (GdkScreen *screen,
                                              GdkEvent  *event)
@@ -204,8 +192,6 @@ gdk_broadway_screen_class_init (GdkBroadwayScreenClass *klass)
   screen_class->get_root_window = gdk_broadway_screen_get_root_window;
   screen_class->is_composited = gdk_broadway_screen_is_composited;
   screen_class->make_display_name = gdk_broadway_screen_make_display_name;
-  screen_class->get_active_window = gdk_broadway_screen_get_active_window;
-  screen_class->get_window_stack = gdk_broadway_screen_get_window_stack;
   screen_class->broadcast_client_message = gdk_broadway_screen_broadcast_client_message;
   screen_class->get_setting = gdk_broadway_screen_get_setting;
   screen_class->get_rgba_visual = gdk_broadway_screen_get_rgba_visual;
index bbf947b16b3dcfbd54db308906049abfc556108b..36ca9c8c8e73660d9a0b049d9be2712b5c46f790 100644 (file)
@@ -502,71 +502,6 @@ gdk_screen_make_display_name (GdkScreen *screen)
   return GDK_SCREEN_GET_CLASS (screen)->make_display_name (screen);
 }
 
-/**
- * gdk_screen_get_active_window:
- * @screen: a #GdkScreen
- *
- * Returns the screen’s currently active window.
- *
- * On X11, this is done by inspecting the _NET_ACTIVE_WINDOW property
- * on the root window, as described in the
- * [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec).
- * If there is no currently currently active
- * window, or the window manager does not support the
- * _NET_ACTIVE_WINDOW hint, this function returns %NULL.
- *
- * On other platforms, this function may return %NULL, depending on whether
- * it is implementable on that platform.
- *
- * The returned window should be unrefed using g_object_unref() when
- * no longer needed.
- *
- * Returns: (nullable) (transfer full): the currently active window,
- *   or %NULL.
- *
- * Since: 2.10
- **/
-GdkWindow *
-gdk_screen_get_active_window (GdkScreen *screen)
-{
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), NULL);
-
-  return GDK_SCREEN_GET_CLASS (screen)->get_active_window (screen);
-}
-
-/**
- * gdk_screen_get_window_stack:
- * @screen: a #GdkScreen
- *
- * Returns a #GList of #GdkWindows representing the current
- * window stack.
- *
- * On X11, this is done by inspecting the _NET_CLIENT_LIST_STACKING
- * property on the root window, as described in the
- * [Extended Window Manager Hints](http://www.freedesktop.org/Standards/wm-spec).
- * If the window manager does not support the
- * _NET_CLIENT_LIST_STACKING hint, this function returns %NULL.
- *
- * On other platforms, this function may return %NULL, depending on whether
- * it is implementable on that platform.
- *
- * The returned list is newly allocated and owns references to the
- * windows it contains, so it should be freed using g_list_free() and
- * its windows unrefed using g_object_unref() when no longer needed.
- *
- * Returns: (nullable) (transfer full) (element-type GdkWindow): a
- *     list of #GdkWindows for the current window stack, or %NULL.
- *
- * Since: 2.10
- **/
-GList *
-gdk_screen_get_window_stack (GdkScreen *screen)
-{
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), NULL);
-
-  return GDK_SCREEN_GET_CLASS (screen)->get_window_stack (screen);
-}
-
 /**
  * gdk_screen_get_setting:
  * @screen: the #GdkScreen where the setting is located
index 6d2da0674b5b73eb12356740bbf2e8d78f63520b..e981d386969e76ffd97049d343752f3c5e6f91c3 100644 (file)
@@ -80,11 +80,6 @@ void    gdk_screen_set_resolution (GdkScreen *screen,
 GDK_AVAILABLE_IN_ALL
 gdouble gdk_screen_get_resolution (GdkScreen *screen);
 
-GDK_AVAILABLE_IN_ALL
-GdkWindow *gdk_screen_get_active_window (GdkScreen *screen);
-GDK_AVAILABLE_IN_ALL
-GList     *gdk_screen_get_window_stack  (GdkScreen *screen);
-
 G_END_DECLS
 
 #endif  /* __GDK_SCREEN_H__ */
index e4001c6fa6d1cb8fc0d40abdd3a531e942e89eaf..3361a8a5e644cc81a5a95d5a67db39399a24471a 100644 (file)
@@ -64,8 +64,6 @@ struct _GdkScreenClass
   GdkVisual *  (* get_rgba_visual)       (GdkScreen *screen);
   gboolean     (* is_composited)         (GdkScreen *screen);
   gchar *      (* make_display_name)     (GdkScreen *screen);
-  GdkWindow *  (* get_active_window)     (GdkScreen *screen);
-  GList *      (* get_window_stack)      (GdkScreen *screen);
   void         (* broadcast_client_message) (GdkScreen *screen,
                                              GdkEvent  *event);
   gboolean     (* get_setting)           (GdkScreen   *screen,
index 0061ea1c34e79e560a4a5d5738aa33f2f0ae4189..694e847d01aff411b734072f31dbeb43075f478d 100644 (file)
@@ -426,20 +426,6 @@ gdk_mir_screen_make_display_name (GdkScreen *screen)
   return NULL; // FIXME
 }
 
-static GdkWindow *
-gdk_mir_screen_get_active_window (GdkScreen *screen)
-{
-  //g_printerr ("gdk_mir_screen_get_active_window\n");
-  return NULL; // FIXME
-}
-
-static GList *
-gdk_mir_screen_get_window_stack (GdkScreen *screen)
-{
-  //g_printerr ("gdk_mir_screen_get_window_stack\n");
-  return NULL; // FIXME
-}
-
 static void
 gdk_mir_screen_broadcast_client_message (GdkScreen *screen,
                                          GdkEvent  *event)
@@ -819,8 +805,6 @@ gdk_mir_screen_class_init (GdkMirScreenClass *klass)
   screen_class->get_rgba_visual = gdk_mir_screen_get_rgba_visual;
   screen_class->is_composited = gdk_mir_screen_is_composited;
   screen_class->make_display_name = gdk_mir_screen_make_display_name;
-  screen_class->get_active_window = gdk_mir_screen_get_active_window;
-  screen_class->get_window_stack = gdk_mir_screen_get_window_stack;
   screen_class->broadcast_client_message = gdk_mir_screen_broadcast_client_message;
   screen_class->get_setting = gdk_mir_screen_get_setting;
   screen_class->visual_get_best_depth = gdk_mir_screen_visual_get_best_depth;
index 58ce7a9027baf8a1cb3c6faf9bb005b42f4d7733..9ec63527cbd608ae5598d56e279800b9492eab8f 100644 (file)
@@ -458,18 +458,6 @@ gdk_quartz_screen_make_display_name (GdkScreen *screen)
   return g_strdup (gdk_display_get_name (_gdk_display));
 }
 
-static GdkWindow *
-gdk_quartz_screen_get_active_window (GdkScreen *screen)
-{
-  return NULL;
-}
-
-static GList *
-gdk_quartz_screen_get_window_stack (GdkScreen *screen)
-{
-  return NULL;
-}
-
 static gboolean
 gdk_quartz_screen_is_composited (GdkScreen *screen)
 {
@@ -500,8 +488,6 @@ gdk_quartz_screen_class_init (GdkQuartzScreenClass *klass)
   screen_class->get_monitor_workarea = gdk_quartz_screen_get_monitor_workarea;
   screen_class->is_composited = gdk_quartz_screen_is_composited;
   screen_class->make_display_name = gdk_quartz_screen_make_display_name;
-  screen_class->get_active_window = gdk_quartz_screen_get_active_window;
-  screen_class->get_window_stack = gdk_quartz_screen_get_window_stack;
   screen_class->broadcast_client_message = _gdk_quartz_screen_broadcast_client_message;
   screen_class->get_setting = _gdk_quartz_screen_get_setting;
   screen_class->get_rgba_visual = _gdk_quartz_screen_get_rgba_visual;
index bb35bffdea9d2e94ce0d2accbc8a10163686ea69..ca58d3ef68af12f4168659c35fffffebc13a901e 100644 (file)
@@ -141,18 +141,6 @@ gdk_wayland_screen_make_display_name (GdkScreen *screen)
   return g_strdup (gdk_display_get_name (GDK_WAYLAND_SCREEN (screen)->display));
 }
 
-static GdkWindow *
-gdk_wayland_screen_get_active_window (GdkScreen *screen)
-{
-  return NULL;
-}
-
-static GList *
-gdk_wayland_screen_get_window_stack (GdkScreen *screen)
-{
-  return NULL;
-}
-
 static void
 gdk_wayland_screen_broadcast_client_message (GdkScreen *screen,
                                             GdkEvent  *event)
@@ -819,8 +807,6 @@ _gdk_wayland_screen_class_init (GdkWaylandScreenClass *klass)
   screen_class->get_rgba_visual = gdk_wayland_screen_get_rgba_visual;
   screen_class->is_composited = gdk_wayland_screen_is_composited;
   screen_class->make_display_name = gdk_wayland_screen_make_display_name;
-  screen_class->get_active_window = gdk_wayland_screen_get_active_window;
-  screen_class->get_window_stack = gdk_wayland_screen_get_window_stack;
   screen_class->broadcast_client_message = gdk_wayland_screen_broadcast_client_message;
   screen_class->get_setting = gdk_wayland_screen_get_setting;
   screen_class->visual_get_best_depth = gdk_wayland_screen_visual_get_best_depth;
index 138f0a21ecccf3619a2daea524328e1f966a7449..c67c8ae0213215547e7a5f9d97cd73445a382282 100644 (file)
@@ -392,22 +392,6 @@ gdk_win32_screen_make_display_name (GdkScreen *screen)
   return g_strdup (gdk_display_get_name (_gdk_display));
 }
 
-static GdkWindow *
-gdk_win32_screen_get_active_window (GdkScreen *screen)
-{
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), NULL);
-
-  return NULL;
-}
-
-static GList *
-gdk_win32_screen_get_window_stack (GdkScreen *screen)
-{
-  g_return_val_if_fail (GDK_IS_SCREEN (screen), NULL);
-
-  return NULL;
-}
-
 static gboolean
 gdk_win32_screen_is_composited (GdkScreen *screen)
 {
@@ -544,8 +528,6 @@ gdk_win32_screen_class_init (GdkWin32ScreenClass *klass)
   screen_class->get_root_window = gdk_win32_screen_get_root_window;
   screen_class->is_composited = gdk_win32_screen_is_composited;
   screen_class->make_display_name = gdk_win32_screen_make_display_name;
-  screen_class->get_active_window = gdk_win32_screen_get_active_window;
-  screen_class->get_window_stack = gdk_win32_screen_get_window_stack;
   screen_class->get_setting = _gdk_win32_screen_get_setting;
   screen_class->get_system_visual = gdk_win32_screen_get_system_visual;
   screen_class->get_rgba_visual = gdk_win32_screen_get_rgba_visual;
index 92359b71751731eeaa4a2d73203f26f7c96f72bf..53e61a4b5afbfe55432ec92203a1d964d6ac9744 100644 (file)
@@ -1081,94 +1081,6 @@ gdk_x11_screen_make_display_name (GdkScreen *screen)
                                    gdk_x11_screen_get_screen_number (screen));
 }
 
-static GdkWindow *
-gdk_x11_screen_get_active_window (GdkScreen *screen)
-{
-  GdkX11Screen *x11_screen = GDK_X11_SCREEN (screen);
-  GdkWindow *ret = NULL;
-  Atom type_return;
-  gint format_return;
-  gulong nitems_return;
-  gulong bytes_after_return;
-  guchar *data = NULL;
-
-  if (!gdk_x11_screen_supports_net_wm_hint (screen,
-                                            gdk_atom_intern_static_string ("_NET_ACTIVE_WINDOW")))
-    return NULL;
-
-  if (XGetWindowProperty (x11_screen->xdisplay, x11_screen->xroot_window,
-                         gdk_x11_get_xatom_by_name_for_display (x11_screen->display,
-                                                                "_NET_ACTIVE_WINDOW"),
-                         0, 1, False, XA_WINDOW, &type_return,
-                         &format_return, &nitems_return,
-                          &bytes_after_return, &data)
-      == Success)
-    {
-      if ((type_return == XA_WINDOW) && (format_return == 32) && (data))
-        {
-          Window window = *(Window *) data;
-
-          if (window != None)
-            {
-              ret = gdk_x11_window_foreign_new_for_display (x11_screen->display,
-                                                            window);
-            }
-        }
-    }
-
-  if (data)
-    XFree (data);
-
-  return ret;
-}
-
-static GList *
-gdk_x11_screen_get_window_stack (GdkScreen *screen)
-{
-  GdkX11Screen *x11_screen = GDK_X11_SCREEN (screen);
-  GList *ret = NULL;
-  Atom type_return;
-  gint format_return;
-  gulong nitems_return;
-  gulong bytes_after_return;
-  guchar *data = NULL;
-
-  if (!gdk_x11_screen_supports_net_wm_hint (screen,
-                                            gdk_atom_intern_static_string ("_NET_CLIENT_LIST_STACKING")))
-    return NULL;
-
-  if (XGetWindowProperty (x11_screen->xdisplay, x11_screen->xroot_window,
-                         gdk_x11_get_xatom_by_name_for_display (x11_screen->display,
-                                                                "_NET_CLIENT_LIST_STACKING"),
-                         0, G_MAXLONG, False, XA_WINDOW, &type_return,
-                         &format_return, &nitems_return,
-                          &bytes_after_return, &data)
-      == Success)
-    {
-      if ((type_return == XA_WINDOW) && (format_return == 32) &&
-          (data) && (nitems_return > 0))
-        {
-          gulong *stack = (gulong *) data;
-          GdkWindow *win;
-          int i;
-
-          for (i = 0; i < nitems_return; i++)
-            {
-              win = gdk_x11_window_foreign_new_for_display (x11_screen->display,
-                                                            (Window)stack[i]);
-
-              if (win != NULL)
-                ret = g_list_append (ret, win);
-            }
-        }
-    }
-
-  if (data)
-    XFree (data);
-
-  return ret;
-}
-
 static gboolean
 gdk_x11_screen_get_setting (GdkScreen   *screen,
                            const gchar *name,
@@ -1474,8 +1386,6 @@ gdk_x11_screen_class_init (GdkX11ScreenClass *klass)
   screen_class->get_rgba_visual = gdk_x11_screen_get_rgba_visual;
   screen_class->is_composited = gdk_x11_screen_is_composited;
   screen_class->make_display_name = gdk_x11_screen_make_display_name;
-  screen_class->get_active_window = gdk_x11_screen_get_active_window;
-  screen_class->get_window_stack = gdk_x11_screen_get_window_stack;
   screen_class->get_setting = gdk_x11_screen_get_setting;
   screen_class->visual_get_best_depth = _gdk_x11_screen_visual_get_best_depth;
   screen_class->visual_get_best_type = _gdk_x11_screen_visual_get_best_type;